// 链式调用时通过在对象的方法中返回对象自身(this)来实现的。可使多个方法调用连续写在一起，形成链式调用。
class Calculator {
    constructor(num) {
        this.num = num;
    }

    add(num) {
        this.num += num;
        return this;
    }

    subtract(num) {
        this.num -= num;
        return this;
    }

    multiply(num) {
        this.num *= num;
        return this;
    }

    divide(num) {
        this.num /= num;
        return this;
    }

    getResult() {
        return this.num;
    }
}


const calculator = new Calculator(10);
const result = calculator.add(5).subtract(3).multiply(2).divide(4).getResult();
console.log(result); // 输出: 4